package com.example.no1admin.mapper;

import com.example.no1admin.pojo.entity.Admin;
import com.example.no1admin.pojo.vo.adminLogin.AdminListItemVO;
import com.example.no1admin.pojo.vo.adminLogin.AdminLoginVO;
import com.example.no1admin.pojo.vo.adminLogin.AdminSimpleVO;

import java.util.List;

public interface AdminMapper {

    /**
     * 根据管理员id删除管理员
     *
     * @param id 管理员id
     * @return 受影响的行数
     */
    int deleteById(Long id);

    /**
     * 根据管理员用户名统计此用户名对应的管理员数据的数量
     *
     * @param username 管理员用户名
     * @return 此名称对应的管理员数据的数量
     */
    int countByUsername(String username);

    /**
     * 根据id获取管理员的简单信息
     *
     * @param id 管理员id
     * @return 匹配的管理员的简单信息，如果没有匹配的管理员信息，则返回null
     */
    AdminSimpleVO getSimpleById(Long id);


    /**
     * 查询管理员列表
     *
     * @return 管理员列表的集合
     */
    List<AdminListItemVO> list();

    AdminLoginVO getByUsername(String s);
}
